package com.neusoft.neuiotms.dcom.service;

import java.util.List;

import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import com.neusoft.bizcore.web.support.Searchable;
import com.neusoft.neuiotms.dcom.dto.MaintainRuleDTO;
import com.neusoft.neuiotms.dcom.model.enums.MaintainRuleStatus;

public interface MaintainRuleService {
    Page<MaintainRuleDTO> search(Pageable pageable, Searchable searchable);

    List<MaintainRuleDTO> findAll();

    List<MaintainRuleDTO> listByModelCode(String code);

    List<MaintainRuleDTO> listByModelCodeAndStatus(String code, MaintainRuleStatus status);

    MaintainRuleDTO create(MaintainRuleDTO dto);

    MaintainRuleDTO update(Long id, MaintainRuleDTO dto);

    MaintainRuleDTO details(Long id);

    MaintainRuleDTO changeStatus(Long id, String flag);

    void delete(Long id);

}
